﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing.Imaging;
using System.Drawing;
using System.IO;
namespace Domain
{
    [Serializable]
    public class Produto
    {
        private int id_produto;
        private string nome;
        private string descricao;
        private Decimal preco;
        private string modelo;
        private string marca;
        private Bitmap foto;
        private Fornecedor fornecedor;

        public Fornecedor Fornecedor 
        {
            get { return fornecedor; } 
            set { fornecedor = value; } 
        }

        public int Id_produto
        {
            get { return id_produto; }
            set { id_produto = value; }
        }
        public string Nome
        {
            get { return nome; }
            set { nome = value; }
        }
        public string Descricao
        {
            get { return descricao; }
            set { descricao = value; }
        }
        public Decimal Preco
        {
            get { return preco; }
            set { preco = value; }
        }
        public string Modelo
        {
            get { return modelo; }
            set { modelo = value; }
        }
        public string Marca
        {
            get { return marca; }
            set { marca = value; }
        }
        public Bitmap Foto
        {
            get { return foto; }
            set { foto = value; }
        }

        public Produto()  
        { 
        }

        public byte[] FotoProduto()
        {
            MemoryStream ms = new MemoryStream();
            this.foto.Save(ms, ImageFormat.Bmp);
            byte[] fotoByte = ms.ToArray();
            return fotoByte;
        }


        public void FotoProduto(byte[] foto)
        {
            if (foto.Length > 1)
            {
                Image image = null;
                MemoryStream ms = new MemoryStream(foto);
                image = Bitmap.FromStream(ms);
                this.foto = (Bitmap)Image.FromStream(ms);
            }
        }
    }
}
